package com.bridata.service;

import com.bridata.model.entity.ScreenPicture;

import java.util.List;

/**
 * 屏幕图片服务接口
 */
public interface ScreenPictureService {

    /**
     * 批量获取屏幕图片记录
     * @param offset 偏移量
     * @param size 数量
     * @return 记录列表
     */
    List<ScreenPicture> fetchRecords(int offset, int size);

    /**
     * 处理单条记录
     * @param record 记录对象
     */
    void processSingleRecord(ScreenPicture record);

    /**
     * 异步处理多条记录
     * @param records 记录列表
     */
    void processRecordsAsync(List<ScreenPicture> records);

    /**
     * 更新数据库记录
     * @param record 记录对象
     * @param imageData 图片数据
     */
    void updateDatabaseRecord(ScreenPicture record, String imageData);

    /**
     * 获取图片数据
     * @param record 记录对象
     * @return 图片数据
     */
    String fetchImageData(ScreenPicture record);

    /**
     * 带重试机制获取图片数据
     * @param record 记录对象
     * @return 图片数据
     */
    String fetchImageWithRetry(ScreenPicture record);
}